import { Stepnum } from '../../model/stepnum.js'
const stepnum = new Stepnum();
import { Login } from '../../model/login.js'
const loginmore = new Login();
Page({

  /**
   * 页面的初始数据
   */
  data: {
    step:0,
    timer: '',
    //参数
    id:'',
    //数据绑定对象
    stepText:{},
    imgUrls: [],
    //轮播图
    indicatorDots: false,
    autoplay: true,
    interval: 5000,
    duration: 500,
    stepPunchId:'',
    steps:0,
    voIntime:'',
    codelist:{},
    dividend:0,//除数
    divisor:0,//被除数
    runlist:[],
    runstep:0,
    stepdel:0,
    record:[],
    formatDate:'',//当前日期
    percent:0,//百分比
    isBegin:0,
    notice:'',
    runObj:{},
    some:0,
    
  },
  handlerGobackClick() {
    wx.navigateBack({
        delta: 1
    })
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    this.setData({
      id:options.id
    })
    //详情
    this.stepdetail()
   },
   
  //详情
  stepdetail(){
    var obj = {
      id:this.data.id
    }
    stepnum.stepdetail(obj).then(res=>{
      console.log(res)
      this.setData({
        imgUrls:res.data.picList,//轮播图
        stepText:res.data.datum,//详情对象
        stepdel:res.data.stepsToday,//剩余步数
        stepPunchId:res.data.datum.id,//列表id参数
        dividend:res.data.datum.steps,//总步数
        isBegin:res.data.datum.isBegin
      })
      var percent=(this.data.runstep/this.data.dividend)*100
      this.setData({
        percent:percent
      })
      
      this.detail_list()
    }).catch(error=>{
    })
  },
  
   //步数打卡记录
   detail_list(){
    var obj={
      stepPunchId:this.data.stepPunchId
    }

    stepnum.user_detail_list(obj).then(res=>{
      console.log(res.data.datums[0].steps);
      console.log(res)
      // this.setData({
      //   step:res.data.datums[0].steps
      // })
      this.setData({
        record:[]
      })
      var record=this.data.record;
      for(var i in res.data.datums){
        record.push(res.data.datums[i])
        
        if(this.data.formatDate==record[0].voIntime){
          record[0].voIntime ='今天'
          this.setData({
               step:res.data.datums[0].steps
            })
        }


        if(res.data.datums[i].steps == 0){
          res.data.datums[i].some = 0
        }
        else{
          res.data.datums[i].some=Math.ceil(res.data.datums[i].steps/this.data.dividend*100)
        }
      }
  
      this.setData({
        record:record
      })

    }).catch(error=>{
      console.log(error)
    })
  },
  //结束点击事件
  end(){
    var that=this 
    if(that.data.stepText.isBegin==1){
        wx.showToast({
          title: '活动还未开始',
          icon:'none',
          duration:2000
        })
    }else if(that.data.stepText.isBegin==3){
      wx.showToast({
        title: '活动已结束',
        icon:'none',
        duration:2000,
      })
    }
  },
  //点击刷新步数
  newStep(){
    this.checkWerunAuthorize();
  },
  //授权微信步数
  checkWerunAuthorize(){
    var that = this;
          wx.getSetting({
                  success(res) { 
                    if (!res.authSetting['scope.werun']) {
                      wx.authorize({
                        scope: 'scope.werun',
                        //允许
                        success:function(res){
                            that.getWeRunData();
                        },
                     
                      //拒绝
                      fail:res => {
                          wx.showModal({
                            title: '提示',
                            content: '需要您授权获取您的微信步数',
                            showCancel: false,
                            success: modalSuccess => {
                              
                              //打开设置
                              wx.openSetting({
                                success(settingdata) {

                                  if (settingdata.authSetting['scope.werun']) {
                                    wx.showModal({
                                      title: '提示',
                                      content: '获取权限成功,再次点击获取',
                                      showCancel: false,
                                      success(res){

                                      }
                                    })
                                  } else {
                                    wx.showModal({
                                      title: '提示',
                                      content: '获取权限失败，将无法获取您的微信步数',
                                      showCancel: false,
                                    })
                                  }
                                },
                                fail(failData) {

                                },
                                complete(finishData) {
                                  
                                  that.getWeRunData();
                                }
                              })
                            }
                          })

                      }


                })
                
              }else{
                 console.log("不用再出弹窗了");
                 that.getWeRunData();
                 //that.againStep()
            
       
            }

          }
       })
 },
  // againStep(){
  //   var that = this;
  //   var runObj;
  //   wx.getStorage({
  //     key: 'runObjUserinfo',
  //     success:function(res){
  //       runObj = res.data;
  //       wx.login({
  //         complete: (res) => {
  //           var code = res.code;
  //           runObj.js_code = code;
  //           that.decryptWeChatRunInfo(runObj);
  //         },
  //       })
  //     }
  //   })
  // },


//已经授权 - 再次点击刷新步数
 //code => 时效性的 wx.login
 //解密 - 刷新
 //1.3 code iv encry 本地

//解密 - 刷新

  getWeRunData(){
    var that = this;
    wx.login({
      complete: (res) => {
        var code = res.code;
        wx.getWeRunData({
          success(res){
            const encryptedData=res.encryptedData
            const iv=res.iv;
            //解密参数
            var runObj={
              encryptedData:encryptedData,
              iv:iv,
              js_code:code
            }
          
            that.decryptWeChatRunInfo(runObj)
            

            //储存参数
            var setrunObj = {
              encryptedData:encryptedData,
              iv:iv,
            }
            wx.setStorage({
              data: setrunObj,
              key: 'runObjUserinfo',
            })
          
            
          }
        });



        

      },
    })




        // wx.getWeRunData({
        //   success(res){
        //     const encryptedData=res.encryptedData
        //     const iv=res.iv;
        //     wx.login({
        //       complete: (res) => {
        //         var code = res.code;
        //         //解密参数
        //         var runObj={
        //           encryptedData:encryptedData,
        //           iv:iv,
        //           js_code:code
        //         }
               
        //         that.decryptWeChatRunInfo(runObj)
                

        //         //储存参数
        //         var setrunObj = {
        //           encryptedData:encryptedData,
        //           iv:iv,
        //         }
        //         wx.setStorage({
        //           data: setrunObj,
        //           key: 'runObjUserinfo',
        //         })

        //       },
        //     })
          
            
        //   }
        // });
      },
      //解密微信步数
      decryptWeChatRunInfo(runobj){
        var that = this;
        loginmore.decryptWeChatRunInfo(runobj).then(res=>{
          console.log(res)
          var runlist=that.data.runlist
          for(var i in res.data.today){
            runlist.push(res.data.today[i])
          }
          var step_temp = res.data.today.pop().step;
          console.log(step_temp);
          that.setData({
            step:step_temp
          })
          that.refresh_stepts(step_temp)
        }).catch(error=>{
          console.log(error)
        })
      },







       //刷新步数
      refresh_stepts(step_temp){
        var that=this
        var obj={
          id:that.data.stepPunchId,
          steps:step_temp,
        }
        stepnum.refresh_stepts(obj).then(res=>{
           //弹窗提示
            if(res.data.notice!='' && res.data.notice!=null && res.code==0){
              wx.showToast({
                title: res.data.notice,
                icon:'none',
                duration:2000
              })
            }else if(res.code==0 && res.data.stepsToday!=''){
              wx.showToast({
                title: res.data.stepsToday,
                icon:'none',
                duration:2000
              })
            }else if(res.code==1){
              wx.showToast({
                title: res.msg,
                icon:'none',
                duration:2000
              })
            }
          this.stepdetail();
          console.log(res)
          //   that.setData({
          //     stepdel:res.data.stepsToday
          //   })

          
          //   var records = that.data.record;
          //   // var entity=res.data.entity;
          //   //弹窗提示
          //   if(res.data.notice!='' && res.data.notice!=null && res.code==0){
          //     wx.showToast({
          //       title: res.data.notice,
          //       icon:'none',
          //       duration:2000
          //     })
          //   }else if(res.code==0 && res.data.stepsToday!=''){
          //     wx.showToast({
          //       title: res.data.stepsToday,
          //       icon:'none',
          //       duration:2000
          //     })
          //   }else if(res.code==1){
          //     wx.showToast({
          //       title: res.msg,
          //       icon:'none',
          //       duration:2000
          //     })
          //   }

          // //列表不为空
          // if(records.length !== 0){
          //   console.log("再次刷新步数")
          //   console.log(res.data.entity.steps);
          //   if(res.data.entity.steps == 0){
          //     res.data.entity.some = 0
          //   }
          //   else{
          //     console.log('ces')
          //     res.data.entity.some=Math.ceil(res.data.entity.steps/that.data.dividend*100)
          //     console.log(records[0].some)
          //     console.log(records[0].steps)
          //   }


          //   if(records[0].voIntime=='今天'){

          //     records.splice( 0 , 1, res.data.entity)
          //     console.log("进入了今天");
          //     console.log(records)
          //   }
          //   else{
          //     console.log("没有进入今天")
          //     records.splice( 0 , 0, res.data.entity);
          //     console.log(records)
          //   }
          //   this.setData({
          //     record:records
          //   })
          //   console.log(this.data.record)
          //   this.setData({
          //     step:this.data.record[0].steps,
          //     some:records[0].some
          //   })
            
          // }else{
          //     //当列表是空的时候
          //     var entity = res.data.entity;
            
          //     this.setData({
          //       stepdel:res.data.stepsToday
          //     })
          //     entity.some=Math.ceil(entity.steps/this.data.dividend*100)
          //     this.data.record.push(entity)
          //     this.setData({
          //       record:this.data.record
          //     })
          // }
         
          
        }).catch(error=>{
          console.log(error)
        })
      },
 
  /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady: function () {

    },

    getNowTime: function() {
      var now = new Date();
      // var year = now.getFullYear();
      var month = now.getMonth() + 1;
      var day = now.getDate();
      if(month < 10) {
        month = '0' + month;
      };
      if(day < 10) {
        day = '0' + day;
      };
      //  如果需要时分秒，就放开
      // var h = now.getHours();
      // var m = now.getMinutes();
      // var s = now.getSeconds();
      var formatDate =month + '月' + day+'日';
      console.log(formatDate)
      this.setData({
        formatDate:formatDate
      })
      return formatDate;
    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow: function () {
    //  this.refresh_stepts()
      this.getNowTime()
    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide: function () {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload: function () {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh: function () {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom: function () {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage: function () {

    }

})